The present invention relates to the field of information technology, and more particularly, to a method, apparatus and system for processing of a series of service messages. Usually, a session (or dialog) consists of one or more transactions. A transaction consists of a request message and zero, one or more response message(s). So session (or dialog) messages consist of a series of service messages which can be categorized into one or more interrelated request/response pairs.
Real-time services are required in some important industries, such as telecom industry and bank industry. For example, a typical requirement in telecom industry is that 95th percentile of response time should be less than 20 ms and the maximum response time should be less than 40 ms.
“Real-time” does not just mean processing fast, but means “the ability to respond to a real-world event reliably and predictably.” So “Real-time” is more concerned about timing than speed.
When an application that needs to be served in real-time is implemented using a normal Java platform, the major difficulty is to control the execution of the application predictably. One reason is the unpredictability of automatic memory management (garbage collection) of the Java platform.
To enable the adoption of Java technology in the field of real time processing, Sun Microsystems, Inc. released the Java Real Time System (Java RTS) that is a commercial implementation of the Real Time Specification for Java (RTSJ). Java RTS enables developers of real-time applications to take full advantage of the Java language ecosystem while maintaining the predictability of the execution of real time applications.
On the other hand, IBM Corp. provides a new real-time garbage collector named Metronome. With Metronome, the pause time of message processing caused by garbage collection is below 1 ms even in the worst case.
Although the Java RTS and the Metronome can improve the predictability of service message processing delay, they decrease the throughput of service messages dramatically.
Therefore, there is a need to provide a solution in the field of real-time processing, so as to improve the predictability of service message processing delay while maintaining the relatively high throughput of service messages.